from datetime import datetime
import random
import string
import time

def vinGenerate():
    """
    生成17位车架号
    :return:
    """
    # 用户输入前两位字符
    prefix = input("请输入前两位字符: ")

    # 用户输入要生成的字符串数量
    number = int(input("请输入要生成的字符串数量: "))

    vinList = []
    for i in range(number):
        # 生成5位随机大写字母
        random_letters = ''.join(random.choices(string.ascii_uppercase, k=2))

        # 获取当前时间的毫秒级时间戳
        timestamp = str(int(time.time() * 1000))[-5:]  # 取最后5位作为时间部分

        # 防止重复，添加1毫秒
        time.sleep(0.001)

        # 获取当前日期并格式化为年月日
        date = datetime.now().strftime("%Y%m%d")

        # 组合最终车架号
        vin = prefix + random_letters + date + timestamp
        print(vin)
        vinList.append(vin)
    return vinList

if __name__ == '__main__':
    vinGenerate()